package com.leadbank.baselbf.leadutils;

import android.annotation.SuppressLint;

import java.math.BigDecimal;

/**
 * @ClassName: LbwMoneyUtils
 * @Description:
 * @Author: zhouzhiguo
 * @Date: 2024/3/18 17:39
 * @Version: 5.0.6
 * 上海利得金融科技集团版权所有.
 */

public class LbwMoneyUtils {

    /**
     * 金额是否不为0
     * @param amount
     * @return  为0 返回false
     * 			不为0 返回true
     */
    public static boolean amountIsZero(Double amount){
        if (LbwADIUtils.isNvl(amount) ){
            return true;
        }
        if ( amount == 0 ){
            return true;
        }
        return false;
    }
    /**
     * 金额是否不为0
     * @param amount
     * @return  为0 返回false
     * 			不为0 返回true
     */
    public static boolean amountIsZero(String amount){
        if (LbwADIUtils.isNvl(amount) ){
            return true;
        }
        if ( amount.equals("0") ){
            return true;
        }
        if ( amount.equals("0.") ){
            return true;
        }
        if ( amount.equals("0.0") ){
            return true;
        }
        if ( amount.equals("0.00") ){
            return true;
        }
        if ( amount.equals("0.00元") ){
            return true;
        }
        return false;
    }


    /**
     * @Author: zhouzhiguo
     * @Date: 2024/3/29 11:30
     * @param value 原费率
     * @param discount 折扣
     * @Version:
     * @Description:  获取真实费率
     */
    public static BigDecimal getRealRate(Double value, Double discount){
        if (LbwADIUtils.isNvl(value) ){
            return BigDecimal.valueOf(0.0);
        }
//        if ( discount == 0 ){
//            return BigDecimal.valueOf(value);
//        }
        if ( discount == 0 ){
            return BigDecimal.valueOf(0.0);
        }
        return BigDecimalUtils.mul(value,discount);
    }


    /**
     * 是否没有折扣
     * 折扣为1时不打折
     *
     * @param discount
     * @return
     */
    public static boolean isNoDiscount(BigDecimal discount){
        if (LbwADIUtils.isNvl(discount) ){
            return true;
        }
//        BigDecimal temp0 = new BigDecimal("0");
//
//        if (BigDecimalUtils.getBigDecimalCompareTo(discount,temp0) == 0){
//            return true;
//        }
        BigDecimal temp1 = new BigDecimal("1");
        if (BigDecimalUtils.getBigDecimalCompareTo(discount,temp1) == 0){
            return true;
        }
        return false;
    }
    /**
     * 是否没有折扣
     * 折扣为1时不打折
     *
     * @param discount
     * @return
     */
    public static boolean isNoDiscount(double discount){
        if (LbwADIUtils.isNvl(discount) ){
            return true;
        }
//        BigDecimal temp0 = new BigDecimal("0");
//
//        if (BigDecimalUtils.getBigDecimalCompareTo(discount,temp0) == 0){
//            return true;
//        }
        if (discount == 1){
            return true;
        }
        return false;
    }

    /***
     * @param @param  p
     * @param @return 设定文件
     * @return String 返回类型
     * @throws
     * @Title: getFormat
     * @Description: 高于10000显示万元
     */
    public static String getFormat(Double p) {
        String str = "";
        if (p >= 10000) {
            BigDecimal bwan = new BigDecimal(10000);
            BigDecimal bp = new BigDecimal(p);
            BigDecimal showBig = BigDecimalUtils.div(bp,bwan);
            str =   BigDecimalUtils.showRate(showBig)+"万";
        } else {
            str = ""+p;
        }
        return str;
    }

    /**
     * 展示兩位小数
     * @param p
     * @return
     */
    public static String showFormat2Point(Double p){
        if (p == null){

            return "0";
        }
        @SuppressLint("DefaultLocale")
        String formattedNumber = String.format("%.2f", p);

        return formattedNumber;

    }
}
